Import('env')
Import('options')
env = env.Copy()

sourceFiles = [
    'bmfont.cpp',
    'GPC_Canvas.cpp',
    'GPC_Engine.cpp',
    'GPC_KeyboardDevice.cpp',
    'GPC_MouseDevice.cpp',
    'GPC_PolygonMaterial.cpp',
    'GPC_RawImage.cpp',
    'GPC_RawLoadDotBlendArray.cpp',
    'GPC_RawLogoArrays.cpp',
    'GPC_RenderTools.cpp',
    'GPC_System.cpp',
]

env.Append(CPPPATH=[
    '#intern/string',
    '#intern/ghost',
    '#intern/guardedalloc',
    '#intern/bmfont',
    '#intern/moto/include',
    '#intern/SoundSystem',
    '#source/gameengine/Rasterizer/RAS_OpenGLRasterizer',
    '#source/kernel/gen_system',
    '#source/kernel/gen_messaging',
    '#source/gameengine/Converter',
    '#source/blender/imbuf',
    '#source/gameengine/Ketsji',
    '#source/blender/blenlib',
    '#source/blender/blenkernel',
    '#source/blender',
    '#source/blender/include',
    '#source/blender/makesdna',
    '#source/gameengine/Rasterizer',
    '#source/gameengine/GameLogic',
    '#source/gameengine/Expressions',
    '#source/gameengine/Network',
    '#source/gameengine/SceneGraph',
    '#source/gameengine/Physics/common',
    '#source/gameengine/Physics/Sumo',
    '#source/gameengine/Physics/Sumo/Fuzzics/include',
    '#source/gameengine/Network/LoopBackNetwork',
    '#source/gameengine/GamePlayer/ghost',
    '#source/blender/misc',
    '#source/blender/blenloader',
])
env.Append(CPPPATH=Flatten(
    env['PYTHON_INCLUDE'] +
    env['SOLID_INCLUDE'] +
    env['PNG_INCLUDE'] +
    env['Z_INCLUDE']
))
								
# XXX: what the hell does this mean?
#This is all plugin stuff!
#if sys.platform=='win32':
#	source_files += ['windows/GPW_Canvas.cpp',
#					 'windows/GPW_Engine.cpp',
#					 'windows/GPW_KeyboardDevice.cpp',
#					 'windows/GPW_System.cpp']
#	gp_common_env.Append ( CPPPATH = ['windows'])
#elif sys.platform=='linux2' or sys.platform=='linux-i386':
#	source_files += ['unix/GPU_Canvas.cpp',
#					 'unix/GPU_Engine.cpp',
#					 'unix/GPU_KeyboardDevice.cpp',
#					 'unix/GPU_System.cpp']
#	gp_common_env.Append ( CPPPATH = ['unix'])

CC = env['CC']
if CC in ('msvc', 'icc'):
    env.Append(CXXFLAGS=['/GR'])

env.Library(target='#$BUILD_DIR/lib/GPC_common', source=sourceFiles)
